10 POKE53280,14:POKE646,14:POKE53281,6 1000 REM****************************** 1010 REM** FULL DISK JACKET ** 1020 REM** **** ** 1030 REM** USE A GEMINI-10X ** 1040 REM** TO MAKE YOUR OWN JACKETS ** 1050 REM** **** ** 1060 REM** BY MIKE GREGORY ** 1070 REM** JUNE 1990 ** 1080 REM****************************** 1090 : 1100 PRINT"[147] FULL DISK JACKET" 1110 PRINT" COPYRIGHT MIKE GREGORY, 1990" 1120 PRINT" MAKE SURE DRIVE AND PRINTER ARE BOTH SWITCHED ON" 1130 PRINT" INSERT DISK AND PRESS ANY KEY WHEN READY" 1140 GETA$:IFA$=""GOTO1140 1150 : 1160 IFR=1GOTO1290 1170 DIMCS(142,10),F$(300) 1180 PRINT"***READING NEW CHARACTERS" 1190 FORCH=0TO141:FORI=0TO10:READCS(CH,I):NEXTI:NEXTCH:REM NEW CHARS 1200 : 1210 FORI=1TO116:D$=D$+CHR$(101):NEXT:REM DASHES 1220 FORI=1TO96:S$=S$+" ":NEXT:REM SPACES 1230 M1$=CHR$(102)+LEFT$(S$,8)+CHR$(102) 1240 P$=M1$+" "+S$+" "+M1$ 1250 M2$=LEFT$(S$,10)+CHR$(102) 1260 Q$=M2$+S$+CHR$(102) 1270 C$=LEFT$(S$,33)+CHR$(102)+LEFT$(S$,28)+CHR$(102)+LEFT$(S$,33) 1280 : 1290 PRINT"***READING DISK DIRECTORY" 1300 X=0:GOSUB2100:S1=J:REM READ DIRECTORY 1310 : 1320 S2=0 1330 PRINT" ARE YOU PROCESSING A FLIPPY (Y/N)?" 1340 GETA$:IFA$="N"THENGOTO1420 1350 IFA$<>"Y"THENGOTO1340 1360 PRINT" TURN DISK AND PRESS ANY KEY WHEN READY" 1370 GETA$:IFA$=""GOTO1370 1380 : 1390 PRINT"***READING SECOND DIRECTORY" 1400 X=146:GOSUB2100:S2=J 1410 : 1420 OPEN4,4,4:REM TRANSPARENT MODE 1430 : 1440 PRINT"***SETTING PRINTER" 1450 X=0:Y=70:GOSUB2040:REM SET UP NEW CHARS 1460 PRINT#4,CHR$(27)CHR$(71);:REM ESC G - DOUBLE STRIKE 1470 PRINT#4,CHR$(27)CHR$(65)CHR$(6);:REM ESC A 6 - 6/72 LINEFEED 1480 PRINT#4,CHR$(27)CHR$(66)CHR$(3);:REM ESC B 3 - 17 CPI 1490 PRINT#4,CHR$(27)CHR$(83)CHR$(1);:REM ESC S 1 - SUBSCRIPT MODE 1500 PRINT#4,CHR$(97)+D$+CHR$(98) 1510 PRINT#4,P$:PRINT#4,P$ 1520 PRINT#4,CHR$(27)+CHR$(65)+CHR$(1)+P$ 1530 PRINT#4,CHR$(27)+CHR$(65)+CHR$(5);: 1540 PRINT#4,CHR$(27)+CHR$(84)+LEFT$(S$,19)+"DISK NAME:- "+LEFT$(F$(0),17);: 1550 PRINT#4," DISK ID:- "+MID$(F$(0),18,2);: 1560 PRINT#4,LEFT$(S$,11)+"BLOCKS FREE:-"+F$(S1);: 1570 PRINT#4,CHR$(27)+CHR$(83)+CHR$(1) 1580 PRINT#4,CHR$(27)+CHR$(65)+CHR$(6)+P$ 1590 PRINT#4,P$ 1600 PRINT#4,M1$+LEFT$(D$,98)+M1$ 1610 PRINT#4,M1$+" "+C$+" "+M1$ 1620 I=0:M=(S1-1)/3 1630 I=I+1:IFI>MTHEN1660 1640 PRINT#4,M1$+" "+F$(I)+" "+CHR$(102)+" "+F$(M+I);: 1650 PRINT#4," "+CHR$(102)+" "+F$(2*M+I)+" "+M1$:GOTO1630 1660 PRINT#4,M1$+" "+C$+" "+M1$:I=I+1:IFI<40THEN1660 1670 PRINT#4,CHR$(99)+D$+CHR$(100) 1680 : 1690 IFS2<>0GOTO1750 1700 I=0 1710 PRINT#4,Q$:I=I+1:IFI<57THEN1710 1720 PRINT#4,LEFT$(S$,10)+CHR$(99)+LEFT$(D$,96)+CHR$(100) 1730 GOTO1990 1740 : 1750 PRINT"***FIXING SECOND DIRECTORY" 1760 FORI=0TOS2-146:F$(I)="":FORK=0TOLEN(F$(I+146))-1 1770 F$(I)=F$(I)+MID$(F$(I+146),LEN(F$(I+146))-K,1):NEXTK:NEXTI 1780 J=S2-146:S2=J:M=(S2-1)/3 1790 PRINT"***RESETTING PRINTER" 1800 X=71:Y=141:GOSUB2040:I=0 1810 PRINT#4,M2$+C$+CHR$(102):I=I+1:IFI<50-MTHEN1810 1820 IFM=0THEN1860 1830 PRINT#4,M2$+" "+F$(2*M+50-I)+CHR$(102)+" ";: 1840 PRINT#4,F$(M+50-I)+" "+CHR$(102)+" "+F$(50-I)+" "+CHR$(102) 1850 I=I+1:IFI<50GOTO1830 1860 PRINT#4,M2$+C$+CHR$(102) 1870 PRINT#4,M2$+LEFT$(D$,96)+CHR$(102) 1880 PRINT#4,Q$:PRINT#4,Q$ 1890 PRINT#4,CHR$(27)+CHR$(65)+CHR$(1)+Q$ 1900 PRINT#4,CHR$(27)+CHR$(65)+CHR$(5);: 1910 PRINT#4,LEFT$(S$,17)+CHR$(27)+CHR$(84);: 1920 PRINT#4,F$(S2)+"-:EERF SKCOLB"+LEFT$(S$,11);: 1930 PRINT#4,MID$(F$(0),4,2)+" -:DI KSID"+LEFT$(S$,11);: 1940 PRINT#4,RIGHT$(F$(0),17)+" -:EMAN KSID"+CHR$(27)+CHR$(83)+CHR$(1) 1950 PRINT#4,CHR$(27)+CHR$(65)+CHR$(6)+Q$ 1960 PRINT#4,Q$ 1970 PRINT#4,LEFT$(S$,10)+CHR$(98)+LEFT$(D$,96)+CHR$(97) 1980 : 1990 CLOSE4:PRINT" PROCESS ANOTHER DISK (Y/N)?" 2000 GETA$:IFA$="Y"THENR=1:GOTO1100 2010 IFA$<>"N"GOTO2000 2020 END 2030 : 2040 FORCH=XTOY 2050 PRINT#4,CHR$(27)CHR$(42)CHR$(1);:REM ESC B 1 - SEND NEW CHARS 2060 FORI=0TO10:PRINT#4,CHR$(CS(CH,I));:NEXTI:NEXTCH 2070 PRINT#4,CHR$(27)CHR$(36)CHR$(1);:REM ESC 6 1 - SELECT NEW CHAR SET 2080 RETURN 2090 : 2100 F=X 2110 OPEN15,8,15,"I0":INPUT#15,EN$:CLOSE15:IFEN$<>"00"THENJ=0:RETURN 2120 OPEN8,8,0,"$0:*" 2130 GET#8,A$,A$ 2140 GET#8,A$,A$,A$,B$ 2150 IFSTTHEN2240 2160 L$=STR$(ASC(A$+CHR$(0))+256*ASC(B$+CHR$(0))):SI$=L$ 2170 GET#8,A$:IFA$=""THEN2220 2180 IFA$=CHR$(34)THEN2170 2190 A$=CHR$(ASC(A$)AND127) 2200 IFASC(A$)>95ORASC(A$)<32THENA$=CHR$(42):REM * IF NOT PRINTABLE 2210 L$=L$+A$:GOTO2170 2220 IFF=XTHENL$=RIGHT$(L$,LEN(L$)-LEN(SI$)-1) 2230 F$(F)=LEFT$(L$,25):F=F+1:GOTO2140 2240 CLOSE8 2250 : 2260 PRINT" DO YOU WANT TO DELETE ANY FILENAMES (Y/N)?" 2270 GETA$:IFA$="N"THENJ=F-1:GOTO2340 2280 IFA$<>"Y"GOTO2270 2290 PRINT"":J=X+1:FORI=X+1TOF-2 2300 PRINTF$(I)" D OR CR?" 2310 GETA$:IFA$=""THEN2310 2320 IFA$<>"D"THENF$(J)=F$(I):J=J+1 2330 NEXT 2340 N=INT((J-X-1)/3):IF(J-X-1)=3*NGOTO2380 2350 F$(J)=LEFT$(S$,25):J=J+1:IF(J-X-1)=3*(N+1)GOTO2380 2360 K=J:FORD=2*N+2TO(J-X-1):F$(K)=F$(K-1):K=K-1:NEXTD 2370 F$(K)=LEFT$(S$,25):J=J+1 2380 F$(J)=LEFT$(SI$+" ",4):RETURN 2390 : 2400 DATA 32,0,0,0,0,0,0,0,0,0,0 2410 DATA 33,0,0,0,0,0,79,0,0,0,0 2420 DATA 34,0,0,0,7,0,0,0,7,0,0 2430 DATA 35,0,20,20,127,20,20,20,127,20,20 2440 DATA 36,0,4,42,0,42,85,42,0,42,16 2450 DATA 37,0,3,64,35,16,8,4,98,1,96 2460 DATA 38,0,50,5,72,5,82,0,32,16,72 2470 DATA 39,0,0,0,5,0,3,0,0,0,0 2480 DATA 40,0,0,0,0,0,28,34,65,0,0 2490 DATA 41,0,0,0,65,34,28,0,0,0,0 2500 DATA 42,0,0,34,20,8,119,8,20,34,0 2510 DATA 43,0,8,0,8,0,62,0,8,0,8 2520 DATA 44,1,0,0,88,0,56,0,0,0,0 2530 DATA 45,0,8,0,8,0,8,0,8,0,8 2540 DATA 46,0,0,0,96,0,96,0,0,0,0 2550 DATA 47,0,0,64,32,16,8,4,2,1,0 2560 DATA 48,0,28,34,0,65,0,65,0,34,28 2570 DATA 49,0,0,0,66,0,127,0,64,0,0 2580 DATA 50,0,66,1,96,1,80,1,72,1,70 2590 DATA 51,0,33,0,65,0,69,0,75,0,49 2600 DATA 52,0,16,8,20,2,17,0,127,0,16 2610 DATA 53,0,39,64,5,64,5,64,5,64,57 2620 DATA 54,0,48,72,4,74,1,72,0,72,48 2630 DATA 55,0,1,0,65,32,17,8,5,2,1 2640 DATA 56,0,54,73,0,73,0,73,0,73,54 2650 DATA 57,0,6,9,0,9,64,41,16,9,6 2660 DATA 58,0,0,0,108,0,108,0,0,0,0 2670 DATA 59,1,0,0,0,91,32,27,0,0,0 2680 DATA 60,0,8,0,20,0,34,0,65,0,0 2690 DATA 61,0,20,0,20,0,20,0,20,0,20 2700 DATA 62,0,0,0,65,0,34,0,20,0,8 2710 DATA 63,0,2,1,0,1,80,1,8,1,6 2720 DATA 64,0,62,0,65,8,85,0,85,0,94 2730 DATA 65,0,120,4,18,1,16,1,18,4,120 2740 DATA 66,0,65,62,65,8,65,8,65,8,54 2750 DATA 67,0,62,65,0,65,0,65,0,65,34 2760 DATA 68,0,65,62,65,0,65,0,65,34,28 2770 DATA 69,0,127,0,73,0,73,0,73,0,65 2780 DATA 70,0,127,0,9,0,9,0,9,0,1 2790 DATA 71,0,62,65,0,65,8,65,8,65,56 2800 DATA 72,0,127,0,8,0,8,0,8,0,127 2810 DATA 73,0,0,0,65,0,127,0,65,0,0 2820 DATA 74,0,48,64,0,65,0,65,62,1,0 2830 DATA 75,0,127,0,8,0,20,0,34,0,65 2840 DATA 76,0,127,0,64,0,64,0,64,0,64 2850 DATA 77,0,127,0,2,4,8,4,2,0,127 2860 DATA 78,0,127,0,2,4,8,16,32,0,127 2870 DATA 79,0,62,65,0,65,0,65,0,65,62 2880 DATA 80,0,127,0,9,0,9,0,9,0,6 2890 DATA 81,0,62,65,0,65,0,81,32,65,62 2900 DATA 82,0,127,0,9,0,9,0,25,32,70 2910 DATA 83,0,38,73,0,73,0,73,0,73,50 2920 DATA 84,0,1,0,1,0,127,0,1,0,1 2930 DATA 85,0,63,64,0,64,0,64,0,64,63 2940 DATA 86,0,7,8,16,32,64,32,16,8,7 2950 DATA 87,0,63,64,32,16,8,16,32,64,63 2960 DATA 88,0,0,65,34,20,8,20,34,65,0 2970 DATA 89,0,1,2,4,8,112,8,4,2,1 2980 DATA 90,0,0,65,32,81,8,69,2,65,0 2990 DATA 91,0,0,0,127,0,65,0,65,0,0 3000 DATA 92,0,100,0,84,32,30,33,68,0,68 3010 DATA 93,0,0,0,65,0,65,0,127,0,0 3020 DATA 94,0,4,0,2,0,127,0,2,0,4 3030 DATA 95,0,8,20,42,65,8,0,8,0,8 3040 DATA 96,0,28,34,65,0,65,34,20,0,20 3050 DATA 97,0,0,0,0,0,120,0,8,0,8 3060 DATA 98,0,8,0,8,0,120,0,0,0,0 3070 DATA 99,0,0,0,0,0,15,0,8,0,8 3080 DATA 100,0,8,0,8,0,15,0,0,0,0 3090 DATA 101,0,8,0,8,0,8,0,8,0,8 3100 DATA 102,0,0,0,0,0,127,0,0,0,0 3110 DATA 32,0,0,0,0,0,0,0,0,0,0 3120 DATA 33,1,0,0,0,0,121,0,0,0,0 3130 DATA 34,1,0,0,112,0,0,0,112,0,0 3140 DATA 35,1,20,20,127,20,20,20,127,20,20 3150 DATA 36,1,4,42,0,42,85,42,0,42,16 3160 DATA 37,1,3,64,35,16,8,4,98,1,96 3170 DATA 38,1,9,4,2,0,37,80,9,80,38 3180 DATA 39,1,0,0,0,0,96,0,80,0,0 3190 DATA 40,1,0,0,65,34,28,0,0,0,0 3200 DATA 41,1,0,0,0,0,28,34,65,0,0 3210 DATA 42,1,0,34,20,8,119,8,20,34,0 3220 DATA 43,1,8,0,8,0,62,0,8,0,8 3230 DATA 44,0,0,0,0,0,14,0,13,0,0 3240 DATA 45,1,8,0,8,0,8,0,8,0,8 3250 DATA 46,1,0,0,0,0,3,0,3,0,0 3260 DATA 47,1,0,64,32,16,8,4,2,1,0 3270 DATA 48,1,28,34,0,65,0,65,0,34,28 3280 DATA 49,1,0,0,1,0,127,0,33,0,0 3290 DATA 50,1,49,64,9,64,5,64,3,64,33 3300 DATA 51,1,70,0,105,0,81,0,65,0,66 3310 DATA 52,1,4,0,127,0,68,32,20,8,4 3320 DATA 53,1,78,1,80,1,80,1,80,1,114 3330 DATA 54,1,6,9,0,9,64,41,16,9,6 3340 DATA 55,1,64,32,80,8,68,2,65,0,64 3350 DATA 56,1,54,73,0,73,0,73,0,73,54 3360 DATA 57,1,48,72,4,74,1,72,0,72,48 3370 DATA 58,1,0,0,0,0,27,0,27,0,0 3380 DATA 59,0,0,0,0,108,2,109,0,0,0 3390 DATA 60,1,0,0,65,0,34,0,20,0,8 3400 DATA 61,1,20,0,20,0,20,0,20,0,20 3410 DATA 62,1,8,0,20,0,34,0,65,0,0 3420 DATA 63,1,48,64,8,64,5,64,0,64,32 3430 DATA 64,1,61,0,85,0,85,8,65,0,62 3440 DATA 65,1,15,16,36,64,4,64,36,16,15 3450 DATA 66,1,54,8,65,8,65,8,65,62,65 3460 DATA 67,1,34,65,0,65,0,65,0,65,62 3470 DATA 68,1,28,34,65,0,65,0,65,62,65 3480 DATA 69,1,65,0,73,0,73,0,73,0,127 3490 DATA 70,1,64,0,72,0,72,0,72,0,127 3500 DATA 71,1,14,65,8,65,8,65,0,65,62 3510 DATA 72,1,127,0,8,0,8,0,8,0,127 3520 DATA 73,1,0,0,65,0,127,0,65,0,0 3530 DATA 74,1,0,64,62,65,0,65,0,1,6 3540 DATA 75,1,65,0,34,0,20,0,8,0,127 3550 DATA 76,1,1,0,1,0,1,0,1,0,127 3560 DATA 77,1,127,0,32,16,8,16,32,0,127 3570 DATA 78,1,127,0,2,4,8,16,32,0,127 3580 DATA 79,1,62,65,0,65,0,65,0,65,62 3590 DATA 80,1,48,0,72,0,72,0,72,0,127 3600 DATA 81,1,62,65,2,69,0,65,0,65,62 3610 DATA 82,1,49,2,76,0,72,0,72,0,127 3620 DATA 83,1,38,73,0,73,0,73,0,73,50 3630 DATA 84,1,64,0,64,0,127,0,64,0,64 3640 DATA 85,1,126,1,0,1,0,1,0,1,126 3650 DATA 86,1,112,8,4,2,1,2,4,8,112 3660 DATA 87,1,126,1,2,4,8,4,2,1,126 3670 DATA 88,1,0,65,34,20,8,20,34,65,0 3680 DATA 89,1,64,32,16,8,7,8,16,32,64 3690 DATA 90,1,0,65,32,81,8,69,2,65,0 3700 DATA 91,1,0,0,65,0,65,0,127,0,0 3710 DATA 92,1,17,0,17,66,60,2,21,0,19 3720 DATA 93,1,0,0,127,0,65,0,65,0,0 3730 DATA 94,1,16,0,32,0,127,0,32,0,16 3740 DATA 95,1,8,0,8,0,8,65,42,20,8 3750 DATA 96,1,20,0,20,34,65,0,65,34,28 3760 DATA 97,1,8,0,8,0,15,0,0,0,0 3770 DATA 98,1,0,0,0,0,15,0,8,0,8 3780 DATA 99,1,8,0,8,0,120,0,0,0,0 3790 DATA 100,1,0,0,0,0,120,0,8,0,8 3800 DATA 101,1,8,0,8,0,8,0,8,0,8 3810 DATA 102,1,0,0,0,0,127,0,0,0,0